#!/usr/bin/env bash
############## header ##############################################################
#AUTOR
# Jefferson Rocha <lrcjefferson@gmail.com>
#
#GETDOWN - Download e extrai arquivos via wget.
#
#DESCRIÇÃO
# Baixa arquivos via cli, (xz, tar, gzip, bzip2) com wget e extrai.
# Por enquanto a única funcionalidade, nas próximas versões sera adicionado mais
# Algumas coisas legais.
#
#BUG
# Nem tudo é compactado com tar, então... há possibilidade de erro.
# Necessita corrigir isto.
#
#TODO
#- Não aceita lista, precisa adicionar essa função caso o usuário necessite.
####################################################################################

#####  Váriaveis
goodbye="/dev/null"
execute(){ wget -q "$@" -O -; }

 while :; do
    # Conferindo qual a extensão, achou? então baixa e extrai.
   case $1 in
        *.xz)
             if ! execute "$1" | tar -xJ > "$goodbye"; then
                break
             fi   
        ;;      
        *.tar)
             if ! execute "$1" | tar -x > "$goodbye"; then
                break
             fi     
        ;; 
        *.zip)
             if ! execute "$1" | tar -xz > "$goodbye"; then
                break
             fi
        ;;
        *.bzip2)
             if ! execute "$1" | tar -xvj > "$goodbye"; then
                break
             fi
        ;;
   esac
# Nula? então tchau! Não? então palmeiras e volta!... quer dizer Rebaixa e volta.
[ -z "$1" ] && break || shift 
 done

